package lc.com.lcpicturebackend.model.dto.carousel;

import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * 轮播图配置数据传输对象
 */
@Data
public class CarouselConfigRequest implements Serializable {
    
    /**
     * 轮播图配置
     */
    private CarouselConfigData config;
    
    /**
     * 轮播图项列表
     */
    private List<CarouselItemData> items;
    
    /**
     * 轮播图配置数据
     */
    @Data
    public static class CarouselConfigData implements Serializable {
        
        /**
         * 是否自动播放
         */
        private Boolean autoplay;
        
        /**
         * 自动播放速度(毫秒)
         */
        private Integer autoplaySpeed;
        
        /**
         * 是否显示指示点
         */
        private Boolean dots;
        
        /**
         * 切换效果
         */
        private String effect;
    }
    
    /**
     * 轮播图项数据
     */
    @Data
    public static class CarouselItemData implements Serializable {
        
        /**
         * ID
         */
        private Long id;
        
        /**
         * 图片URL
         */
        private String imageUrl;
        
        /**
         * 标题
         */
        private String title;
        
        /**
         * 描述
         */
        private String description;
        
        /**
         * 按钮文本
         */
        private String buttonText;
        
        /**
         * 按钮链接
         */
        private String buttonLink;
        
        /**
         * 排序
         */
        private Integer sort;
        
        /**
         * 状态
         */
        private Integer status;
    }
    
    private static final long serialVersionUID = 1L;
}